package org.hackystat.linkedservicedata.ui.issues;

import java.util.LinkedList;

/**
 * Utility class to group all the components used to construct an Issue profile.
 *
 * @author Myriam Leggieri.
 *
 */
public class IssueProfile {

  public String visibility = null;

  public String assignedTo = null;

  public String id = null;

  public String type = null;

  public String status = null;

  public String priority = null;

  public String milestone = null;

  public String creationDate = null;

  public String closureDate = null;

  public String modifiedDate = null;

  private LinkedList<String> duplicates = null;

  private LinkedList<String> sameAs = null;

  private LinkedList<String> seeAlso = null;

  private LinkedList<String> tags = null;

  public IssueProfile() {
    resetDuplicates();
    resetSameAs();
    resetSeeAlso();
    resetTags();
  }

  public void resetDuplicates() {
    duplicates = new LinkedList<String>();
  }

  public void resetSameAs() {
    sameAs = new LinkedList<String>();
  }

  public void resetSeeAlso() {
    seeAlso = new LinkedList<String>();
  }

  public void resetTags() {
    tags = new LinkedList<String>();
  }

  public void addDuplicate(String uri) {
    duplicates.add(uri);
  }

  public void addSameAs(String uri) {
    sameAs.add(uri);
  }

  public void addSeeAlso(String uri) {
    seeAlso.add(uri);
  }

  public void addTag(String uri) {
    tags.add(uri);
  }

  public LinkedList<String> getDuplicates() {
    return duplicates;
  }

  public LinkedList<String> getSameAs() {
    return sameAs;
  }

  public LinkedList<String> getSeeAlso() {
    return seeAlso;
  }

  public LinkedList<String> getTags() {
    return tags;
  }

}
